<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts: fatfs.hal/mmc.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts
   &#160;<span id="projectnumber">1.0</span>
   </div>
   <div id="projectbrief">ESP8266ILI9341DisplayProject</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_2441aed259fe884ac729d0a0c31d0193.html">fatfs.hal</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">mmc.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="user__config_8h_source.html">user_config.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="mmc__hal_8h_source.html">mmc_hal.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="mathio_8h_source.html">printf/mathio.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="fatfs_8h_source.html">fatfs.sup/fatfs.h</a>&quot;</code><br />
</div>
<p><a href="mmc_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ab6b224028ee993b43049cd45010ec00f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ab6b224028ee993b43049cd45010ec00f">CS_LOW</a>()&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#abdc5ab6358ed33bc5a98a11fde82b704">mmc_spi_begin</a>()  /* Set MMC_CS = low */</td></tr>
<tr class="separator:ab6b224028ee993b43049cd45010ec00f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af67a5c0216de0cfadf059fa4cf05d65d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af67a5c0216de0cfadf059fa4cf05d65d">CS_HIGH</a>()&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a4963fd4e3ba8fabe799b88073aea0499">mmc_spi_end</a>()     /* Set MMC_CS = high */</td></tr>
<tr class="separator:af67a5c0216de0cfadf059fa4cf05d65d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f7233f98c6f4abb0cdea809c39bcf68"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a3f7233f98c6f4abb0cdea809c39bcf68">MMC_CD</a>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#ab9dae194babcfe774428305a575556cc">mmc_ins_status</a>() /* Test if card detected.   yes:true, no:false, default:true */</td></tr>
<tr class="separator:a3f7233f98c6f4abb0cdea809c39bcf68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5736fa0032458e3579bccfc2b363e8ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a5736fa0032458e3579bccfc2b363e8ba">MMC_WP</a>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a5d4cd1450305a6f9ad8ebd1a19a606c5">mmc_wp_status</a>()  /* Test if <a class="el" href="posix_8h.html#a072435300ac99e8d7c3749f45166e797">write</a> protected. yes:true, no:false, default:false */</td></tr>
<tr class="separator:a5736fa0032458e3579bccfc2b363e8ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3d9176798d1718d779e2db397de4bb5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ae3d9176798d1718d779e2db397de4bb5">FCLK_SLOW</a>()&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a03e4e29ebb0844123378d72b41bf3575">mmc_slow</a>()      /* Set <a class="el" href="hspi_8h.html#aadd93900fc87105fa3ef514675d4133b">SPI</a> slow clock (100-400kHz) */</td></tr>
<tr class="separator:ae3d9176798d1718d779e2db397de4bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ffcdd6f111fd9b4229f49a5e37046b7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a1ffcdd6f111fd9b4229f49a5e37046b7">FCLK_FAST</a>()&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#afd5747681a788dc27943f736e57eeb54">mmc_fast</a>()      /* Set <a class="el" href="hspi_8h.html#aadd93900fc87105fa3ef514675d4133b">SPI</a> fast clock (20MHz max) */</td></tr>
<tr class="separator:a1ffcdd6f111fd9b4229f49a5e37046b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a938c1466755f12fb04ac0d1b775584d1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a938c1466755f12fb04ac0d1b775584d1">CMD0</a>&#160;&#160;&#160;(0)         /* GO_IDLE_STATE */</td></tr>
<tr class="separator:a938c1466755f12fb04ac0d1b775584d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca9979f299fa78c1128d778084478673"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aca9979f299fa78c1128d778084478673">CMD1</a>&#160;&#160;&#160;(1)         /* SEND_OP_COND (MMC) */</td></tr>
<tr class="separator:aca9979f299fa78c1128d778084478673"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b6fdfed1b57ac31269b6b9987e0761b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a9b6fdfed1b57ac31269b6b9987e0761b">ACMD41</a>&#160;&#160;&#160;(0x80+41)   /* SEND_OP_COND (SDC) */</td></tr>
<tr class="separator:a9b6fdfed1b57ac31269b6b9987e0761b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac75b3e0ad1fb013ea946fb49bbe65668"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ac75b3e0ad1fb013ea946fb49bbe65668">CMD8</a>&#160;&#160;&#160;(8)         /* SEND_IF_COND */</td></tr>
<tr class="separator:ac75b3e0ad1fb013ea946fb49bbe65668"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fac6a251d7e7dc204d21639bf521459"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a1fac6a251d7e7dc204d21639bf521459">CMD9</a>&#160;&#160;&#160;(9)         /* SEND_CSD */</td></tr>
<tr class="separator:a1fac6a251d7e7dc204d21639bf521459"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7b800ed8e7bd52e6f570a5ce72b8104"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ae7b800ed8e7bd52e6f570a5ce72b8104">CMD10</a>&#160;&#160;&#160;(10)        /* SEND_CID */</td></tr>
<tr class="separator:ae7b800ed8e7bd52e6f570a5ce72b8104"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d6283c9b060afbaa0e6d1ff7e5ea7b8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a8d6283c9b060afbaa0e6d1ff7e5ea7b8">CMD12</a>&#160;&#160;&#160;(12)        /* STOP_TRANSMISSION */</td></tr>
<tr class="separator:a8d6283c9b060afbaa0e6d1ff7e5ea7b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4be8f501d86d24b02923846db618fc71"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a4be8f501d86d24b02923846db618fc71">ACMD13</a>&#160;&#160;&#160;(0x80+13)   /* SD_STATUS (SDC) */</td></tr>
<tr class="separator:a4be8f501d86d24b02923846db618fc71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeab261b94f2031ba41a1d4d857c3541"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aaeab261b94f2031ba41a1d4d857c3541">CMD16</a>&#160;&#160;&#160;(16)        /* SET_BLOCKLEN */</td></tr>
<tr class="separator:aaeab261b94f2031ba41a1d4d857c3541"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bbfe7dc16a19b7f40efcf554b5666ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a6bbfe7dc16a19b7f40efcf554b5666ad">CMD17</a>&#160;&#160;&#160;(17)        /* READ_SINGLE_BLOCK */</td></tr>
<tr class="separator:a6bbfe7dc16a19b7f40efcf554b5666ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d32c27a6be061b865ba539127278f14"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a3d32c27a6be061b865ba539127278f14">CMD18</a>&#160;&#160;&#160;(18)        /* READ_MULTIPLE_BLOCK */</td></tr>
<tr class="separator:a3d32c27a6be061b865ba539127278f14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14506e981f38b6177bc36f72c2ca18b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a14506e981f38b6177bc36f72c2ca18b1">CMD23</a>&#160;&#160;&#160;(23)        /* SET_BLOCK_COUNT (MMC) */</td></tr>
<tr class="separator:a14506e981f38b6177bc36f72c2ca18b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa38144d651e2880f92c65bb683621f78"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aa38144d651e2880f92c65bb683621f78">ACMD23</a>&#160;&#160;&#160;(0x80+23)   /* SET_WR_BLK_ERASE_COUNT (SDC) */</td></tr>
<tr class="separator:aa38144d651e2880f92c65bb683621f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a252300302c6f7960df547a7f5c25be85"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a252300302c6f7960df547a7f5c25be85">CMD24</a>&#160;&#160;&#160;(24)        /* WRITE_BLOCK */</td></tr>
<tr class="separator:a252300302c6f7960df547a7f5c25be85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee2c673fba987178f4642531fdeefe9e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aee2c673fba987178f4642531fdeefe9e">CMD25</a>&#160;&#160;&#160;(25)        /* WRITE_MULTIPLE_BLOCK */</td></tr>
<tr class="separator:aee2c673fba987178f4642531fdeefe9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af822a2ff9987b3a48982731fa4ba5f7b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af822a2ff9987b3a48982731fa4ba5f7b">CMD32</a>&#160;&#160;&#160;(32)        /* ERASE_ER_BLK_START */</td></tr>
<tr class="separator:af822a2ff9987b3a48982731fa4ba5f7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a309d932899cca7255395821dc32dace0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a309d932899cca7255395821dc32dace0">CMD33</a>&#160;&#160;&#160;(33)        /* ERASE_ER_BLK_END */</td></tr>
<tr class="separator:a309d932899cca7255395821dc32dace0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6af4991146dfb0a47c4aa6f166efb046"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a6af4991146dfb0a47c4aa6f166efb046">CMD38</a>&#160;&#160;&#160;(38)        /* ERASE */</td></tr>
<tr class="separator:a6af4991146dfb0a47c4aa6f166efb046"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af784857da94febad94e1d63dcd5a0f57"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af784857da94febad94e1d63dcd5a0f57">CMD48</a>&#160;&#160;&#160;(48)        /* READ_EXTR_SINGLE */</td></tr>
<tr class="separator:af784857da94febad94e1d63dcd5a0f57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a862b9a426aa33dd253b919d2313b3e45"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a862b9a426aa33dd253b919d2313b3e45">CMD49</a>&#160;&#160;&#160;(49)        /* WRITE_EXTR_SINGLE */</td></tr>
<tr class="separator:a862b9a426aa33dd253b919d2313b3e45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78289a7a85ffcfddd626694105dc0780"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a78289a7a85ffcfddd626694105dc0780">CMD55</a>&#160;&#160;&#160;(55)        /* APP_CMD */</td></tr>
<tr class="separator:a78289a7a85ffcfddd626694105dc0780"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7a26b2cf17e1ff5967820a1fa41a7aa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aa7a26b2cf17e1ff5967820a1fa41a7aa">CMD58</a>&#160;&#160;&#160;(58)        /* READ_OCR */</td></tr>
<tr class="separator:aa7a26b2cf17e1ff5967820a1fa41a7aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aa2280c6de741431ee6eaecc9a3254874"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aa2280c6de741431ee6eaecc9a3254874">power_on</a> (void)</td></tr>
<tr class="memdesc:aa2280c6de741431ee6eaecc9a3254874"><td class="mdescLeft">&#160;</td><td class="mdescRight">power on  <a href="#aa2280c6de741431ee6eaecc9a3254874">More...</a><br /></td></tr>
<tr class="separator:aa2280c6de741431ee6eaecc9a3254874"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb5620f777b0f4aa1d4f0baed62998a9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aeb5620f777b0f4aa1d4f0baed62998a9">power_off</a> (void)</td></tr>
<tr class="memdesc:aeb5620f777b0f4aa1d4f0baed62998a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">power off  <a href="#aeb5620f777b0f4aa1d4f0baed62998a9">More...</a><br /></td></tr>
<tr class="separator:aeb5620f777b0f4aa1d4f0baed62998a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38f29ae10012d1cdd2e694aa2c340e22"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a38f29ae10012d1cdd2e694aa2c340e22">xchg_spi</a> (<a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> dat)</td></tr>
<tr class="memdesc:a38f29ae10012d1cdd2e694aa2c340e22"><td class="mdescLeft">&#160;</td><td class="mdescRight">send/receive a SPI byte  <a href="#a38f29ae10012d1cdd2e694aa2c340e22">More...</a><br /></td></tr>
<tr class="separator:a38f29ae10012d1cdd2e694aa2c340e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50ff2f4928f652f9968097d326623808"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a50ff2f4928f652f9968097d326623808">rcvr_spi_multi</a> (<a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *p, <a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> cnt)</td></tr>
<tr class="memdesc:a50ff2f4928f652f9968097d326623808"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive a data block fast.  <a href="#a50ff2f4928f652f9968097d326623808">More...</a><br /></td></tr>
<tr class="separator:a50ff2f4928f652f9968097d326623808"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c2f6f09ffb61f5c8d4b7474fc9ac744"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a8c2f6f09ffb61f5c8d4b7474fc9ac744">xmit_spi_multi</a> (const <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *p, <a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> cnt)</td></tr>
<tr class="memdesc:a8c2f6f09ffb61f5c8d4b7474fc9ac744"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send a data block fast.  <a href="#a8c2f6f09ffb61f5c8d4b7474fc9ac744">More...</a><br /></td></tr>
<tr class="separator:a8c2f6f09ffb61f5c8d4b7474fc9ac744"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7771efbbd1a015b449d838d7f09959a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ab7771efbbd1a015b449d838d7f09959a">wait_ready</a> (<a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> wt)</td></tr>
<tr class="memdesc:ab7771efbbd1a015b449d838d7f09959a"><td class="mdescLeft">&#160;</td><td class="mdescRight">wait for card ready  <a href="#ab7771efbbd1a015b449d838d7f09959a">More...</a><br /></td></tr>
<tr class="separator:ab7771efbbd1a015b449d838d7f09959a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7ba69856a88eef56eabe1d777239392"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af7ba69856a88eef56eabe1d777239392">deselect</a> (void)</td></tr>
<tr class="memdesc:af7ba69856a88eef56eabe1d777239392"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deselect the card and release SPI bus.  <a href="#af7ba69856a88eef56eabe1d777239392">More...</a><br /></td></tr>
<tr class="separator:af7ba69856a88eef56eabe1d777239392"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa25e843f96b6052ed79d3c70bc013935"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aa25e843f96b6052ed79d3c70bc013935">select</a> (void)</td></tr>
<tr class="memdesc:aa25e843f96b6052ed79d3c70bc013935"><td class="mdescLeft">&#160;</td><td class="mdescRight">Select the card and wait for ready.  <a href="#aa25e843f96b6052ed79d3c70bc013935">More...</a><br /></td></tr>
<tr class="separator:aa25e843f96b6052ed79d3c70bc013935"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59275a8f1cc0f0d24c6f9f1ae578775a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a59275a8f1cc0f0d24c6f9f1ae578775a">rcvr_datablock</a> (<a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *buff, <a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> btr)</td></tr>
<tr class="memdesc:a59275a8f1cc0f0d24c6f9f1ae578775a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive a data packet from MMC.  <a href="#a59275a8f1cc0f0d24c6f9f1ae578775a">More...</a><br /></td></tr>
<tr class="separator:a59275a8f1cc0f0d24c6f9f1ae578775a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd47154c84441f723909d5875aa64efd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#afd47154c84441f723909d5875aa64efd">send_cmd</a> (<a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> cmd, <a class="el" href="integer_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a> arg)</td></tr>
<tr class="memdesc:afd47154c84441f723909d5875aa64efd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send a data packet to MMC.  <a href="#afd47154c84441f723909d5875aa64efd">More...</a><br /></td></tr>
<tr class="separator:afd47154c84441f723909d5875aa64efd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4049fbbcf364fc59886118c79895507"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af4049fbbcf364fc59886118c79895507">mmc_disk_initialize</a> (void)</td></tr>
<tr class="memdesc:af4049fbbcf364fc59886118c79895507"><td class="mdescLeft">&#160;</td><td class="mdescRight">Public Functions.  <a href="#af4049fbbcf364fc59886118c79895507">More...</a><br /></td></tr>
<tr class="separator:af4049fbbcf364fc59886118c79895507"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac14ea06e6b2ce5ad9808db3c205db5e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ac14ea06e6b2ce5ad9808db3c205db5e6">mmc_disk_status</a> (void)</td></tr>
<tr class="memdesc:ac14ea06e6b2ce5ad9808db3c205db5e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Disk Status.  <a href="#ac14ea06e6b2ce5ad9808db3c205db5e6">More...</a><br /></td></tr>
<tr class="separator:ac14ea06e6b2ce5ad9808db3c205db5e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41eabb26301eb16450258417ed137d67"><td class="memItemLeft" align="right" valign="top"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#aacdfef1dad6565f65c26d12fe0ea4b2b">DRESULT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a41eabb26301eb16450258417ed137d67">mmc_disk_read</a> (<a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *buff, <a class="el" href="integer_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a> sector, <a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> count)</td></tr>
<tr class="memdesc:a41eabb26301eb16450258417ed137d67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read Sector(s)  <a href="#a41eabb26301eb16450258417ed137d67">More...</a><br /></td></tr>
<tr class="separator:a41eabb26301eb16450258417ed137d67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34555655fe13a47c95b35a2c13b85847"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a34555655fe13a47c95b35a2c13b85847">mmc_disk_timerproc</a> (void)</td></tr>
<tr class="memdesc:a34555655fe13a47c95b35a2c13b85847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write Sector(s)  <a href="#a34555655fe13a47c95b35a2c13b85847">More...</a><br /></td></tr>
<tr class="separator:a34555655fe13a47c95b35a2c13b85847"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a014a1e17b21e3c0b80fe0afc0106976f"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#a014a1e17b21e3c0b80fe0afc0106976f">Stat</a> = <a class="el" href="diskio_8h.html#abd6503c70d862b979a3f7080a59e9acd">STA_NOINIT</a></td></tr>
<tr class="separator:a014a1e17b21e3c0b80fe0afc0106976f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac69c67bd452589205cafb4b54cfe3be"><td class="memItemLeft" align="right" valign="top">static volatile <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#aac69c67bd452589205cafb4b54cfe3be">Timer1</a></td></tr>
<tr class="separator:aac69c67bd452589205cafb4b54cfe3be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af010d7e43aa304973d38d164078ff6e1"><td class="memItemLeft" align="right" valign="top">static volatile <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#af010d7e43aa304973d38d164078ff6e1">Timer2</a></td></tr>
<tr class="separator:af010d7e43aa304973d38d164078ff6e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9edfbb60df250acb70f5f287eb1497a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="mmc_8c.html#ae9edfbb60df250acb70f5f287eb1497a">CardType</a></td></tr>
<tr class="separator:ae9edfbb60df250acb70f5f287eb1497a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a4be8f501d86d24b02923846db618fc71"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ACMD13&#160;&#160;&#160;(0x80+13)   /* SD_STATUS (SDC) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00061">61</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="aa38144d651e2880f92c65bb683621f78"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ACMD23&#160;&#160;&#160;(0x80+23)   /* SET_WR_BLK_ERASE_COUNT (SDC) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00066">66</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a9b6fdfed1b57ac31269b6b9987e0761b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ACMD41&#160;&#160;&#160;(0x80+41)   /* SEND_OP_COND (SDC) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00056">56</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="a938c1466755f12fb04ac0d1b775584d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD0&#160;&#160;&#160;(0)         /* GO_IDLE_STATE */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00054">54</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="aca9979f299fa78c1128d778084478673"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD1&#160;&#160;&#160;(1)         /* SEND_OP_COND (MMC) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00055">55</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ae7b800ed8e7bd52e6f570a5ce72b8104"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD10&#160;&#160;&#160;(10)        /* SEND_CID */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00059">59</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a8d6283c9b060afbaa0e6d1ff7e5ea7b8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD12&#160;&#160;&#160;(12)        /* STOP_TRANSMISSION */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00060">60</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, and <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="aaeab261b94f2031ba41a1d4d857c3541"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD16&#160;&#160;&#160;(16)        /* SET_BLOCKLEN */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00062">62</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="a6bbfe7dc16a19b7f40efcf554b5666ad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD17&#160;&#160;&#160;(17)        /* READ_SINGLE_BLOCK */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00063">63</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a3d32c27a6be061b865ba539127278f14"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD18&#160;&#160;&#160;(18)        /* READ_MULTIPLE_BLOCK */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00064">64</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a14506e981f38b6177bc36f72c2ca18b1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD23&#160;&#160;&#160;(23)        /* SET_BLOCK_COUNT (MMC) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00065">65</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

</div>
</div>
<a class="anchor" id="a252300302c6f7960df547a7f5c25be85"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD24&#160;&#160;&#160;(24)        /* WRITE_BLOCK */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00067">67</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="aee2c673fba987178f4642531fdeefe9e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD25&#160;&#160;&#160;(25)        /* WRITE_MULTIPLE_BLOCK */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00068">68</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="af822a2ff9987b3a48982731fa4ba5f7b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD32&#160;&#160;&#160;(32)        /* ERASE_ER_BLK_START */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00069">69</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a309d932899cca7255395821dc32dace0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD33&#160;&#160;&#160;(33)        /* ERASE_ER_BLK_END */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00070">70</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a6af4991146dfb0a47c4aa6f166efb046"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD38&#160;&#160;&#160;(38)        /* ERASE */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00071">71</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="af784857da94febad94e1d63dcd5a0f57"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD48&#160;&#160;&#160;(48)        /* READ_EXTR_SINGLE */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00072">72</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a862b9a426aa33dd253b919d2313b3e45"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD49&#160;&#160;&#160;(49)        /* WRITE_EXTR_SINGLE */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00073">73</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a78289a7a85ffcfddd626694105dc0780"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD55&#160;&#160;&#160;(55)        /* APP_CMD */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00074">74</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="aa7a26b2cf17e1ff5967820a1fa41a7aa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD58&#160;&#160;&#160;(58)        /* READ_OCR */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00075">75</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="ac75b3e0ad1fb013ea946fb49bbe65668"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD8&#160;&#160;&#160;(8)         /* SEND_IF_COND */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00057">57</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="a1fac6a251d7e7dc204d21639bf521459"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CMD9&#160;&#160;&#160;(9)         /* SEND_CSD */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00058">58</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="af67a5c0216de0cfadf059fa4cf05d65d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_HIGH</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a4963fd4e3ba8fabe799b88073aea0499">mmc_spi_end</a>()     /* Set MMC_CS = high */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00040">40</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00189">deselect()</a>.</p>

</div>
</div>
<a class="anchor" id="ab6b224028ee993b43049cd45010ec00f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CS_LOW</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#abdc5ab6358ed33bc5a98a11fde82b704">mmc_spi_begin</a>()  /* Set MMC_CS = low */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00039">39</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00202">select()</a>.</p>

</div>
</div>
<a class="anchor" id="a1ffcdd6f111fd9b4229f49a5e37046b7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FCLK_FAST</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#afd5747681a788dc27943f736e57eeb54">mmc_fast</a>()      /* Set <a class="el" href="hspi_8h.html#aadd93900fc87105fa3ef514675d4133b">SPI</a> fast clock (20MHz max) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00045">45</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ae3d9176798d1718d779e2db397de4bb5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FCLK_SLOW</td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a03e4e29ebb0844123378d72b41bf3575">mmc_slow</a>()      /* Set <a class="el" href="hspi_8h.html#aadd93900fc87105fa3ef514675d4133b">SPI</a> slow clock (100-400kHz) */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00044">44</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="a3f7233f98c6f4abb0cdea809c39bcf68"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MMC_CD&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#ab9dae194babcfe774428305a575556cc">mmc_ins_status</a>() /* Test if card detected.   yes:true, no:false, default:true */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00042">42</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00708">mmc_disk_timerproc()</a>.</p>

</div>
</div>
<a class="anchor" id="a5736fa0032458e3579bccfc2b363e8ba"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MMC_WP&#160;&#160;&#160;<a class="el" href="mmc__hal_8h.html#a5d4cd1450305a6f9ad8ebd1a19a606c5">mmc_wp_status</a>()  /* Test if <a class="el" href="posix_8h.html#a072435300ac99e8d7c3749f45166e797">write</a> protected. yes:true, no:false, default:false */</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00043">43</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00708">mmc_disk_timerproc()</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="af7ba69856a88eef56eabe1d777239392"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void deselect </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Deselect the card and release SPI bus. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00189">189</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, <a class="el" href="mmc_8c_source.html#l00202">select()</a>, and <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="af4049fbbcf364fc59886118c79895507"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a> mmc_disk_initialize </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Public Functions. </p>
<p>Initialize Disk Drive </p><dl class="section return"><dt>Returns</dt><dd>Stat </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00340">340</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="diskio_8c_source.html#l00054">disk_initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="a41eabb26301eb16450258417ed137d67"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#aacdfef1dad6565f65c26d12fe0ea4b2b">DRESULT</a> mmc_disk_read </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *&#160;</td>
          <td class="paramname"><em>buff</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a>&#160;</td>
          <td class="paramname"><em>sector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Read Sector(s) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buff</td><td>read buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>start sector number </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>sector count </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 ok </dd>
<dd>
non zero error </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00433">433</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="diskio_8c_source.html#l00077">disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="ac14ea06e6b2ce5ad9808db3c205db5e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a> mmc_disk_status </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Disk Status. </p>
<dl class="section return"><dt>Returns</dt><dd>Stat </dd>
<dd>
STA_NOINIT if no drive </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00420">420</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="diskio_8c_source.html#l00031">disk_status()</a>.</p>

</div>
</div>
<a class="anchor" id="a34555655fe13a47c95b35a2c13b85847"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mmc_disk_timerproc </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Write Sector(s) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">buff</td><td>write buffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sector</td><td>start sector number </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>sector count </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 ok </dd>
<dd>
non zero error Miscellaneous Functions </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">cmd</td><td>Control code </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">[in|out]</td><td>buff: Send/Receive buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>result mmc timer processes </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00708">708</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="diskio_8c_source.html#l00157">disk_timerproc()</a>, and <a class="el" href="mmc__hal_8c_source.html#l00059">mmc_task()</a>.</p>

</div>
</div>
<a class="anchor" id="aeb5620f777b0f4aa1d4f0baed62998a9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void power_off </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>power off </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00110">110</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="aa2280c6de741431ee6eaecc9a3254874"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> void power_on </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>power on </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00097">97</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

</div>
</div>
<a class="anchor" id="a59275a8f1cc0f0d24c6f9f1ae578775a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int rcvr_datablock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *&#160;</td>
          <td class="paramname"><em>buff</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>btr</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Receive a data packet from MMC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buff</td><td>Data buffer to read data into </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">btr</td><td>Bytes to read </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 Successful </dd>
<dd>
0 Error </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00224">224</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a50ff2f4928f652f9968097d326623808"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void rcvr_spi_multi </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *&#160;</td>
          <td class="paramname"><em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>cnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Receive a data block fast. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p</td><td>Data block to be read </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cnt</td><td>Bytes to read </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00139">139</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00224">rcvr_datablock()</a>.</p>

</div>
</div>
<a class="anchor" id="aa25e843f96b6052ed79d3c70bc013935"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int select </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Select the card and wait for ready. </p>
<dl class="section return"><dt>Returns</dt><dd>1 Successful </dd>
<dd>
0 Timeout </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00202">202</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, and <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>.</p>

</div>
</div>
<a class="anchor" id="afd47154c84441f723909d5875aa64efd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> send_cmd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td>
          <td class="paramname"><em>cmd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#ad342ac907eb044443153a22f964bf0af">DWORD</a>&#160;</td>
          <td class="paramname"><em>arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Send a data packet to MMC. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buff</td><td>Data buffer to write </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">btr</td><td>Bytes to write </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 Successful </dd>
<dd>
0 Error Send a command packet to MMC </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">send_cmd</td><td>Commend Index </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cmd</td><td>Argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>R1 resp </dd>
<dd>
bit7==1Send failed </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00288">288</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="ab7771efbbd1a015b449d838d7f09959a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="earth2wireframe_8c.html#ad0fe97585b8891f5e4f2b9a6426330a4">MEMSPACE</a> int wait_ready </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>wt</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>wait for card ready </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">wt</td><td>ms to wait </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 Ready </dd>
<dd>
0 Timeout </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00169">169</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, <a class="el" href="mmc_8c_source.html#l00224">rcvr_datablock()</a>, and <a class="el" href="mmc_8c_source.html#l00202">select()</a>.</p>

</div>
</div>
<a class="anchor" id="a38f29ae10012d1cdd2e694aa2c340e22"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> xchg_spi </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a>&#160;</td>
          <td class="paramname"><em>dat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>send/receive a SPI byte </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">dat</td><td>data to send </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Data read </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00126">126</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00189">deselect()</a>, <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, <a class="el" href="mmc_8c_source.html#l00224">rcvr_datablock()</a>, <a class="el" href="mmc_8c_source.html#l00202">select()</a>, <a class="el" href="mmc_8c_source.html#l00288">send_cmd()</a>, and <a class="el" href="mmc_8c_source.html#l00169">wait_ready()</a>.</p>

</div>
</div>
<a class="anchor" id="a8c2f6f09ffb61f5c8d4b7474fc9ac744"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void xmit_spi_multi </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> *&#160;</td>
          <td class="paramname"><em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="integer_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>cnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Send a data block fast. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">p</td><td>Data block to be sent </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cnt</td><td>Bytes to send </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00152">152</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00224">rcvr_datablock()</a>.</p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="ae9edfbb60df250acb70f5f287eb1497a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> CardType</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00085">85</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, and <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>.</p>

</div>
</div>
<a class="anchor" id="a014a1e17b21e3c0b80fe0afc0106976f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">volatile <a class="el" href="diskio_8h.html#adba6790898ce4029c20a34b898ce73c1">DSTATUS</a> Stat = <a class="el" href="diskio_8h.html#abd6503c70d862b979a3f7080a59e9acd">STA_NOINIT</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00079">79</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00340">mmc_disk_initialize()</a>, <a class="el" href="mmc_8c_source.html#l00433">mmc_disk_read()</a>, <a class="el" href="mmc_8c_source.html#l00420">mmc_disk_status()</a>, <a class="el" href="mmc_8c_source.html#l00708">mmc_disk_timerproc()</a>, <a class="el" href="mmc__hal_8c_source.html#l00208">mmc_init()</a>, and <a class="el" href="mmc__hal_8c_source.html#l00172">mmc_test_timeout()</a>.</p>

</div>
</div>
<a class="anchor" id="aac69c67bd452589205cafb4b54cfe3be"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">volatile <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> Timer1</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00082">82</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00708">mmc_disk_timerproc()</a>.</p>

</div>
</div>
<a class="anchor" id="af010d7e43aa304973d38d164078ff6e1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">volatile <a class="el" href="integer_8h.html#a4ae1dab0fb4b072a66584546209e7d58">BYTE</a> Timer2</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="mmc_8c_source.html#l00082">82</a> of file <a class="el" href="mmc_8c_source.html">mmc.c</a>.</p>

<p>Referenced by <a class="el" href="mmc_8c_source.html#l00708">mmc_disk_timerproc()</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jan 31 2018 21:22:16 for ESP8266 ILI9341 display support code with printf sources, wire-frame viewer and custom fonts by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>
